import Vue from 'vue'
import Vuex from 'vuex'


//引用Vuex 插件
Vue.use(Vuex)

const home = {
    state: { //存放状态（共享属性）
        count: 1
    },

    mutations: {// 改变 state 状态
        increment(state, n) { // n 为载荷
            //state.count++
            state.count += n
        },
        decrement(state) {
            state.count--
        }
    },

    actions: {
        add(context, n) {
            // 触发 mutations 中的 increment 改变 state
            context.commit('increment', n)
        },
        decrement({ commit, state }) { // 按需传值
            commit('decrement')
        }
    },

    //派生属性
    getters: {
        desc(state) {
            if (state.count < 50) {
                return '吃饭'
            } else if (state.count < 100) {
                return '睡觉'
            } else {
                return '打豆豆'
            }
        }
    }
}

const store = new Vuex.Store({ // 注意V 和 S都是大写字母
    modules:{
        home // home: home
    }
})

export default store